ZerosLike
将输出数组逐元素置为 0。 该算子不依赖输入数据,仅根据给定长度与数据类型,对输出缓冲区进行清零操作,常用于初始化张量或中间结果。
\[dst_i = 0\]
- 输入:
length - 计算长度。
core_mask - 核掩码(仅适用于共享存储版本)。
- 输出:
output - 输出数据地址,逐元素被置为 0。
- 支持平台:
FT78NEMT7004
备注
FT78NE 支持 fp, dp, int8, int16, int32, cplx64, cplx128
MT7004 支持 hp, fp, int16, int32, cplx64
复数类型中实部与虚部均被置为 0
共享存储版本:
-
void i8_zerolike_s(int8_t *output, int length, int core_mask)
-
void i16_zerolike_s(int16_t *output, int length, int core_mask)
-
void i32_zerolike_s(int32_t *output, int length, int core_mask)
-
void hp_zerolike_s(half *output, int length, int core_mask)
-
void fp_zerolike_s(float *output, int length, int core_mask)
-
void dp_zerolike_s(double *output, int length, int core_mask)
-
void c64_zerolike_s(float *output, int length, int core_mask)
-
void c128_zerolike_s(double *output, int length, int core_mask)
C调用示例:
1//FT78NE示例
2#include <stdio.h>
3#include <zerolike.h>
4
5int main(int argc, char* argv[]) {
6 float *output = (float *)0xA0000000; // output在DDR空间
7 int length = 1024;
8 int core_mask = 0xff;
9
10 fp_zerolike_s(output, length, core_mask);
11 return 0;
12}
私有存储版本:
-
void i8_zerolike_p(int8_t *output, int length)
-
void i16_zerolike_p(int16_t *output, int length)
-
void i32_zerolike_p(int32_t *output, int length)
-
void hp_zerolike_p(half *output, int length)
-
void fp_zerolike_p(float *output, int length)
-
void dp_zerolike_p(double *output, int length)
-
void c64_zerolike_p(float *output, int length)
-
void c128_zerolike_p(double *output, int length)
C调用示例:
1//FT78NE示例
2#include <stdio.h>
3#include <zerolike.h>
4
5int main(int argc, char* argv[]) {
6 float *output = (float *)0x10810000; // output在L2空间
7 int length = 1024;
8
9 fp_zerolike_p(output, length);
10 return 0;
11}